# RUN: tfg-translate -graphdef-to-mlir %s | FileCheck %s

# CHECK: While
# CHECK-SAME: -> (tensor<*xi32>, tensor<*xf32>)

node {
  name: "StatefulWhile"
  op: "While"
  input: "iter"
  input: "val"
  attr {
    key: "T"
    value {
      list {
        type: DT_INT32
        type: DT_FLOAT
      }
    }
  }
  attr {
    key: "body"
    value {
      func {
        name: "body"
      }
    }
  }
  attr {
    key: "cond"
    value {
      func {
        name: "cond"
      }
    }
  }
  attr {
    key: "output_shapes"
    value {
      list {
        shape {
          dim {
            size: 4
          }
        }
        shape {
          dim {
            size: 4
          }
        }
      }
    }
  }
}
node {
  name: "iter"
  op: "Placeholder"
  attr {
    key: "dtype"
    value {
      type: DT_INT32
    }
  }
}
node {
  name: "val"
  op: "Placeholder"
  attr {
    key: "dtype"
    value {
      type: DT_FLOAT
    }
  }
}
